/*
 * XML Type:  attributes
 * Namespace: http://java.sun.com/xml/ns/persistence/orm
 * Java type: com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Attributes
 *
 * Automatically generated - do not modify.
 */
package com.googlecode.horncomb.orm.jpa.v10.xmlbeans.impl;
/**
 * An XML attributes(@http://java.sun.com/xml/ns/persistence/orm).
 *
 * This is a complex type.
 */
@SuppressWarnings("unchecked")
public class AttributesImpl extends org.apache.xmlbeans.impl.values.XmlComplexContentImpl implements com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Attributes
{

    /**  */
	private static final long serialVersionUID = 7097860514018876154L;


	public AttributesImpl(org.apache.xmlbeans.SchemaType sType)
    {
        super(sType);
    }

    private static final javax.xml.namespace.QName ID$0 =
        new javax.xml.namespace.QName("http://java.sun.com/xml/ns/persistence/orm", "id");
    private static final javax.xml.namespace.QName EMBEDDEDID$2 =
        new javax.xml.namespace.QName("http://java.sun.com/xml/ns/persistence/orm", "embedded-id");
    private static final javax.xml.namespace.QName BASIC$4 =
        new javax.xml.namespace.QName("http://java.sun.com/xml/ns/persistence/orm", "basic");
    private static final javax.xml.namespace.QName VERSION$6 =
        new javax.xml.namespace.QName("http://java.sun.com/xml/ns/persistence/orm", "version");
    private static final javax.xml.namespace.QName MANYTOONE$8 =
        new javax.xml.namespace.QName("http://java.sun.com/xml/ns/persistence/orm", "many-to-one");
    private static final javax.xml.namespace.QName ONETOMANY$10 =
        new javax.xml.namespace.QName("http://java.sun.com/xml/ns/persistence/orm", "one-to-many");
    private static final javax.xml.namespace.QName ONETOONE$12 =
        new javax.xml.namespace.QName("http://java.sun.com/xml/ns/persistence/orm", "one-to-one");
    private static final javax.xml.namespace.QName MANYTOMANY$14 =
        new javax.xml.namespace.QName("http://java.sun.com/xml/ns/persistence/orm", "many-to-many");
    private static final javax.xml.namespace.QName EMBEDDED$16 =
        new javax.xml.namespace.QName("http://java.sun.com/xml/ns/persistence/orm", "embedded");
    private static final javax.xml.namespace.QName TRANSIENT$18 =
        new javax.xml.namespace.QName("http://java.sun.com/xml/ns/persistence/orm", "transient");


    /**
     * Gets a List of "id" elements
     */
    public java.util.List<com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Id> getIdList()
    {
        final class IdList extends java.util.AbstractList<com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Id>
        {
            @Override
			public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Id get(int i)
                { return AttributesImpl.this.getIdArray(i); }

            @Override
			public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Id set(int i, com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Id o)
            {
                com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Id old = AttributesImpl.this.getIdArray(i);
                AttributesImpl.this.setIdArray(i, o);
                return old;
            }

            @Override
			public void add(int i, com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Id o)
                { AttributesImpl.this.insertNewId(i).set(o); }

            @Override
			public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Id remove(int i)
            {
                com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Id old = AttributesImpl.this.getIdArray(i);
                AttributesImpl.this.removeId(i);
                return old;
            }

            @Override
			public int size()
                { return AttributesImpl.this.sizeOfIdArray(); }

        }

        synchronized (monitor())
        {
            check_orphaned();
            return new IdList();
        }
    }

    /**
     * Gets array of all "id" elements
     */
    public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Id[] getIdArray()
    {
        synchronized (monitor())
        {
            check_orphaned();
            java.util.List targetList = new java.util.ArrayList();
            get_store().find_all_element_users(ID$0, targetList);
            com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Id[] result = new com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Id[targetList.size()];
            targetList.toArray(result);
            return result;
        }
    }

    /**
     * Gets ith "id" element
     */
    public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Id getIdArray(int i)
    {
        synchronized (monitor())
        {
            check_orphaned();
            com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Id target = null;
            target = (com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Id)get_store().find_element_user(ID$0, i);
            if (target == null)
            {
                throw new IndexOutOfBoundsException();
            }
            return target;
        }
    }

    /**
     * Returns number of "id" element
     */
    public int sizeOfIdArray()
    {
        synchronized (monitor())
        {
            check_orphaned();
            return get_store().count_elements(ID$0);
        }
    }

    /**
     * Sets array of all "id" element
     */
    public void setIdArray(com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Id[] idArray)
    {
        synchronized (monitor())
        {
            check_orphaned();
            arraySetterHelper(idArray, ID$0);
        }
    }

    /**
     * Sets ith "id" element
     */
    public void setIdArray(int i, com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Id id)
    {
        synchronized (monitor())
        {
            check_orphaned();
            com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Id target = null;
            target = (com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Id)get_store().find_element_user(ID$0, i);
            if (target == null)
            {
                throw new IndexOutOfBoundsException();
            }
            target.set(id);
        }
    }

    /**
     * Inserts and returns a new empty value (as xml) as the ith "id" element
     */
    public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Id insertNewId(int i)
    {
        synchronized (monitor())
        {
            check_orphaned();
            com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Id target = null;
            target = (com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Id)get_store().insert_element_user(ID$0, i);
            return target;
        }
    }

    /**
     * Appends and returns a new empty value (as xml) as the last "id" element
     */
    public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Id addNewId()
    {
        synchronized (monitor())
        {
            check_orphaned();
            com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Id target = null;
            target = (com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Id)get_store().add_element_user(ID$0);
            return target;
        }
    }

    /**
     * Removes the ith "id" element
     */
    public void removeId(int i)
    {
        synchronized (monitor())
        {
            check_orphaned();
            get_store().remove_element(ID$0, i);
        }
    }

    /**
     * Gets the "embedded-id" element
     */
    public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.EmbeddedId getEmbeddedId()
    {
        synchronized (monitor())
        {
            check_orphaned();
            com.googlecode.horncomb.orm.jpa.v10.xmlbeans.EmbeddedId target = null;
            target = (com.googlecode.horncomb.orm.jpa.v10.xmlbeans.EmbeddedId)get_store().find_element_user(EMBEDDEDID$2, 0);
            if (target == null)
            {
                return null;
            }
            return target;
        }
    }

    /**
     * True if has "embedded-id" element
     */
    public boolean isSetEmbeddedId()
    {
        synchronized (monitor())
        {
            check_orphaned();
            return get_store().count_elements(EMBEDDEDID$2) != 0;
        }
    }

    /**
     * Sets the "embedded-id" element
     */
    public void setEmbeddedId(com.googlecode.horncomb.orm.jpa.v10.xmlbeans.EmbeddedId embeddedId)
    {
        synchronized (monitor())
        {
            check_orphaned();
            com.googlecode.horncomb.orm.jpa.v10.xmlbeans.EmbeddedId target = null;
            target = (com.googlecode.horncomb.orm.jpa.v10.xmlbeans.EmbeddedId)get_store().find_element_user(EMBEDDEDID$2, 0);
            if (target == null)
            {
                target = (com.googlecode.horncomb.orm.jpa.v10.xmlbeans.EmbeddedId)get_store().add_element_user(EMBEDDEDID$2);
            }
            target.set(embeddedId);
        }
    }

    /**
     * Appends and returns a new empty "embedded-id" element
     */
    public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.EmbeddedId addNewEmbeddedId()
    {
        synchronized (monitor())
        {
            check_orphaned();
            com.googlecode.horncomb.orm.jpa.v10.xmlbeans.EmbeddedId target = null;
            target = (com.googlecode.horncomb.orm.jpa.v10.xmlbeans.EmbeddedId)get_store().add_element_user(EMBEDDEDID$2);
            return target;
        }
    }

    /**
     * Unsets the "embedded-id" element
     */
    public void unsetEmbeddedId()
    {
        synchronized (monitor())
        {
            check_orphaned();
            get_store().remove_element(EMBEDDEDID$2, 0);
        }
    }

    /**
     * Gets a List of "basic" elements
     */
    public java.util.List<com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Basic> getBasicList()
    {
        final class BasicList extends java.util.AbstractList<com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Basic>
        {
            @Override
			public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Basic get(int i)
                { return AttributesImpl.this.getBasicArray(i); }

            @Override
			public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Basic set(int i, com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Basic o)
            {
                com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Basic old = AttributesImpl.this.getBasicArray(i);
                AttributesImpl.this.setBasicArray(i, o);
                return old;
            }

            @Override
			public void add(int i, com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Basic o)
                { AttributesImpl.this.insertNewBasic(i).set(o); }

            @Override
			public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Basic remove(int i)
            {
                com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Basic old = AttributesImpl.this.getBasicArray(i);
                AttributesImpl.this.removeBasic(i);
                return old;
            }

            @Override
			public int size()
                { return AttributesImpl.this.sizeOfBasicArray(); }

        }

        synchronized (monitor())
        {
            check_orphaned();
            return new BasicList();
        }
    }

    /**
     * Gets array of all "basic" elements
     */
    public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Basic[] getBasicArray()
    {
        synchronized (monitor())
        {
            check_orphaned();
            java.util.List targetList = new java.util.ArrayList();
            get_store().find_all_element_users(BASIC$4, targetList);
            com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Basic[] result = new com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Basic[targetList.size()];
            targetList.toArray(result);
            return result;
        }
    }

    /**
     * Gets ith "basic" element
     */
    public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Basic getBasicArray(int i)
    {
        synchronized (monitor())
        {
            check_orphaned();
            com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Basic target = null;
            target = (com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Basic)get_store().find_element_user(BASIC$4, i);
            if (target == null)
            {
                throw new IndexOutOfBoundsException();
            }
            return target;
        }
    }

    /**
     * Returns number of "basic" element
     */
    public int sizeOfBasicArray()
    {
        synchronized (monitor())
        {
            check_orphaned();
            return get_store().count_elements(BASIC$4);
        }
    }

    /**
     * Sets array of all "basic" element
     */
    public void setBasicArray(com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Basic[] basicArray)
    {
        synchronized (monitor())
        {
            check_orphaned();
            arraySetterHelper(basicArray, BASIC$4);
        }
    }

    /**
     * Sets ith "basic" element
     */
    public void setBasicArray(int i, com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Basic basic)
    {
        synchronized (monitor())
        {
            check_orphaned();
            com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Basic target = null;
            target = (com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Basic)get_store().find_element_user(BASIC$4, i);
            if (target == null)
            {
                throw new IndexOutOfBoundsException();
            }
            target.set(basic);
        }
    }

    /**
     * Inserts and returns a new empty value (as xml) as the ith "basic" element
     */
    public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Basic insertNewBasic(int i)
    {
        synchronized (monitor())
        {
            check_orphaned();
            com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Basic target = null;
            target = (com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Basic)get_store().insert_element_user(BASIC$4, i);
            return target;
        }
    }

    /**
     * Appends and returns a new empty value (as xml) as the last "basic" element
     */
    public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Basic addNewBasic()
    {
        synchronized (monitor())
        {
            check_orphaned();
            com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Basic target = null;
            target = (com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Basic)get_store().add_element_user(BASIC$4);
            return target;
        }
    }

    /**
     * Removes the ith "basic" element
     */
    public void removeBasic(int i)
    {
        synchronized (monitor())
        {
            check_orphaned();
            get_store().remove_element(BASIC$4, i);
        }
    }

    /**
     * Gets a List of "version" elements
     */
    public java.util.List<com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Version> getVersionList()
    {
        final class VersionList extends java.util.AbstractList<com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Version>
        {
            @Override
			public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Version get(int i)
                { return AttributesImpl.this.getVersionArray(i); }

            @Override
			public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Version set(int i, com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Version o)
            {
                com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Version old = AttributesImpl.this.getVersionArray(i);
                AttributesImpl.this.setVersionArray(i, o);
                return old;
            }

            @Override
			public void add(int i, com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Version o)
                { AttributesImpl.this.insertNewVersion(i).set(o); }

            @Override
			public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Version remove(int i)
            {
                com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Version old = AttributesImpl.this.getVersionArray(i);
                AttributesImpl.this.removeVersion(i);
                return old;
            }

            @Override
			public int size()
                { return AttributesImpl.this.sizeOfVersionArray(); }

        }

        synchronized (monitor())
        {
            check_orphaned();
            return new VersionList();
        }
    }

    /**
     * Gets array of all "version" elements
     */
    public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Version[] getVersionArray()
    {
        synchronized (monitor())
        {
            check_orphaned();
            java.util.List targetList = new java.util.ArrayList();
            get_store().find_all_element_users(VERSION$6, targetList);
            com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Version[] result = new com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Version[targetList.size()];
            targetList.toArray(result);
            return result;
        }
    }

    /**
     * Gets ith "version" element
     */
    public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Version getVersionArray(int i)
    {
        synchronized (monitor())
        {
            check_orphaned();
            com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Version target = null;
            target = (com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Version)get_store().find_element_user(VERSION$6, i);
            if (target == null)
            {
                throw new IndexOutOfBoundsException();
            }
            return target;
        }
    }

    /**
     * Returns number of "version" element
     */
    public int sizeOfVersionArray()
    {
        synchronized (monitor())
        {
            check_orphaned();
            return get_store().count_elements(VERSION$6);
        }
    }

    /**
     * Sets array of all "version" element
     */
    public void setVersionArray(com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Version[] versionArray)
    {
        synchronized (monitor())
        {
            check_orphaned();
            arraySetterHelper(versionArray, VERSION$6);
        }
    }

    /**
     * Sets ith "version" element
     */
    public void setVersionArray(int i, com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Version version)
    {
        synchronized (monitor())
        {
            check_orphaned();
            com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Version target = null;
            target = (com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Version)get_store().find_element_user(VERSION$6, i);
            if (target == null)
            {
                throw new IndexOutOfBoundsException();
            }
            target.set(version);
        }
    }

    /**
     * Inserts and returns a new empty value (as xml) as the ith "version" element
     */
    public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Version insertNewVersion(int i)
    {
        synchronized (monitor())
        {
            check_orphaned();
            com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Version target = null;
            target = (com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Version)get_store().insert_element_user(VERSION$6, i);
            return target;
        }
    }

    /**
     * Appends and returns a new empty value (as xml) as the last "version" element
     */
    public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Version addNewVersion()
    {
        synchronized (monitor())
        {
            check_orphaned();
            com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Version target = null;
            target = (com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Version)get_store().add_element_user(VERSION$6);
            return target;
        }
    }

    /**
     * Removes the ith "version" element
     */
    public void removeVersion(int i)
    {
        synchronized (monitor())
        {
            check_orphaned();
            get_store().remove_element(VERSION$6, i);
        }
    }

    /**
     * Gets a List of "many-to-one" elements
     */
    public java.util.List<com.googlecode.horncomb.orm.jpa.v10.xmlbeans.ManyToOne> getManyToOneList()
    {
        final class ManyToOneList extends java.util.AbstractList<com.googlecode.horncomb.orm.jpa.v10.xmlbeans.ManyToOne>
        {
            @Override
			public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.ManyToOne get(int i)
                { return AttributesImpl.this.getManyToOneArray(i); }

            @Override
			public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.ManyToOne set(int i, com.googlecode.horncomb.orm.jpa.v10.xmlbeans.ManyToOne o)
            {
                com.googlecode.horncomb.orm.jpa.v10.xmlbeans.ManyToOne old = AttributesImpl.this.getManyToOneArray(i);
                AttributesImpl.this.setManyToOneArray(i, o);
                return old;
            }

            @Override
			public void add(int i, com.googlecode.horncomb.orm.jpa.v10.xmlbeans.ManyToOne o)
                { AttributesImpl.this.insertNewManyToOne(i).set(o); }

            @Override
			public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.ManyToOne remove(int i)
            {
                com.googlecode.horncomb.orm.jpa.v10.xmlbeans.ManyToOne old = AttributesImpl.this.getManyToOneArray(i);
                AttributesImpl.this.removeManyToOne(i);
                return old;
            }

            @Override
			public int size()
                { return AttributesImpl.this.sizeOfManyToOneArray(); }

        }

        synchronized (monitor())
        {
            check_orphaned();
            return new ManyToOneList();
        }
    }

    /**
     * Gets array of all "many-to-one" elements
     */
    public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.ManyToOne[] getManyToOneArray()
    {
        synchronized (monitor())
        {
            check_orphaned();
            java.util.List targetList = new java.util.ArrayList();
            get_store().find_all_element_users(MANYTOONE$8, targetList);
            com.googlecode.horncomb.orm.jpa.v10.xmlbeans.ManyToOne[] result = new com.googlecode.horncomb.orm.jpa.v10.xmlbeans.ManyToOne[targetList.size()];
            targetList.toArray(result);
            return result;
        }
    }

    /**
     * Gets ith "many-to-one" element
     */
    public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.ManyToOne getManyToOneArray(int i)
    {
        synchronized (monitor())
        {
            check_orphaned();
            com.googlecode.horncomb.orm.jpa.v10.xmlbeans.ManyToOne target = null;
            target = (com.googlecode.horncomb.orm.jpa.v10.xmlbeans.ManyToOne)get_store().find_element_user(MANYTOONE$8, i);
            if (target == null)
            {
                throw new IndexOutOfBoundsException();
            }
            return target;
        }
    }

    /**
     * Returns number of "many-to-one" element
     */
    public int sizeOfManyToOneArray()
    {
        synchronized (monitor())
        {
            check_orphaned();
            return get_store().count_elements(MANYTOONE$8);
        }
    }

    /**
     * Sets array of all "many-to-one" element
     */
    public void setManyToOneArray(com.googlecode.horncomb.orm.jpa.v10.xmlbeans.ManyToOne[] manyToOneArray)
    {
        synchronized (monitor())
        {
            check_orphaned();
            arraySetterHelper(manyToOneArray, MANYTOONE$8);
        }
    }

    /**
     * Sets ith "many-to-one" element
     */
    public void setManyToOneArray(int i, com.googlecode.horncomb.orm.jpa.v10.xmlbeans.ManyToOne manyToOne)
    {
        synchronized (monitor())
        {
            check_orphaned();
            com.googlecode.horncomb.orm.jpa.v10.xmlbeans.ManyToOne target = null;
            target = (com.googlecode.horncomb.orm.jpa.v10.xmlbeans.ManyToOne)get_store().find_element_user(MANYTOONE$8, i);
            if (target == null)
            {
                throw new IndexOutOfBoundsException();
            }
            target.set(manyToOne);
        }
    }

    /**
     * Inserts and returns a new empty value (as xml) as the ith "many-to-one" element
     */
    public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.ManyToOne insertNewManyToOne(int i)
    {
        synchronized (monitor())
        {
            check_orphaned();
            com.googlecode.horncomb.orm.jpa.v10.xmlbeans.ManyToOne target = null;
            target = (com.googlecode.horncomb.orm.jpa.v10.xmlbeans.ManyToOne)get_store().insert_element_user(MANYTOONE$8, i);
            return target;
        }
    }

    /**
     * Appends and returns a new empty value (as xml) as the last "many-to-one" element
     */
    public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.ManyToOne addNewManyToOne()
    {
        synchronized (monitor())
        {
            check_orphaned();
            com.googlecode.horncomb.orm.jpa.v10.xmlbeans.ManyToOne target = null;
            target = (com.googlecode.horncomb.orm.jpa.v10.xmlbeans.ManyToOne)get_store().add_element_user(MANYTOONE$8);
            return target;
        }
    }

    /**
     * Removes the ith "many-to-one" element
     */
    public void removeManyToOne(int i)
    {
        synchronized (monitor())
        {
            check_orphaned();
            get_store().remove_element(MANYTOONE$8, i);
        }
    }

    /**
     * Gets a List of "one-to-many" elements
     */
    public java.util.List<com.googlecode.horncomb.orm.jpa.v10.xmlbeans.OneToMany> getOneToManyList()
    {
        final class OneToManyList extends java.util.AbstractList<com.googlecode.horncomb.orm.jpa.v10.xmlbeans.OneToMany>
        {
            @Override
			public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.OneToMany get(int i)
                { return AttributesImpl.this.getOneToManyArray(i); }

            @Override
			public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.OneToMany set(int i, com.googlecode.horncomb.orm.jpa.v10.xmlbeans.OneToMany o)
            {
                com.googlecode.horncomb.orm.jpa.v10.xmlbeans.OneToMany old = AttributesImpl.this.getOneToManyArray(i);
                AttributesImpl.this.setOneToManyArray(i, o);
                return old;
            }

            @Override
			public void add(int i, com.googlecode.horncomb.orm.jpa.v10.xmlbeans.OneToMany o)
                { AttributesImpl.this.insertNewOneToMany(i).set(o); }

            @Override
			public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.OneToMany remove(int i)
            {
                com.googlecode.horncomb.orm.jpa.v10.xmlbeans.OneToMany old = AttributesImpl.this.getOneToManyArray(i);
                AttributesImpl.this.removeOneToMany(i);
                return old;
            }

            @Override
			public int size()
                { return AttributesImpl.this.sizeOfOneToManyArray(); }

        }

        synchronized (monitor())
        {
            check_orphaned();
            return new OneToManyList();
        }
    }

    /**
     * Gets array of all "one-to-many" elements
     */
    public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.OneToMany[] getOneToManyArray()
    {
        synchronized (monitor())
        {
            check_orphaned();
            java.util.List targetList = new java.util.ArrayList();
            get_store().find_all_element_users(ONETOMANY$10, targetList);
            com.googlecode.horncomb.orm.jpa.v10.xmlbeans.OneToMany[] result = new com.googlecode.horncomb.orm.jpa.v10.xmlbeans.OneToMany[targetList.size()];
            targetList.toArray(result);
            return result;
        }
    }

    /**
     * Gets ith "one-to-many" element
     */
    public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.OneToMany getOneToManyArray(int i)
    {
        synchronized (monitor())
        {
            check_orphaned();
            com.googlecode.horncomb.orm.jpa.v10.xmlbeans.OneToMany target = null;
            target = (com.googlecode.horncomb.orm.jpa.v10.xmlbeans.OneToMany)get_store().find_element_user(ONETOMANY$10, i);
            if (target == null)
            {
                throw new IndexOutOfBoundsException();
            }
            return target;
        }
    }

    /**
     * Returns number of "one-to-many" element
     */
    public int sizeOfOneToManyArray()
    {
        synchronized (monitor())
        {
            check_orphaned();
            return get_store().count_elements(ONETOMANY$10);
        }
    }

    /**
     * Sets array of all "one-to-many" element
     */
    public void setOneToManyArray(com.googlecode.horncomb.orm.jpa.v10.xmlbeans.OneToMany[] oneToManyArray)
    {
        synchronized (monitor())
        {
            check_orphaned();
            arraySetterHelper(oneToManyArray, ONETOMANY$10);
        }
    }

    /**
     * Sets ith "one-to-many" element
     */
    public void setOneToManyArray(int i, com.googlecode.horncomb.orm.jpa.v10.xmlbeans.OneToMany oneToMany)
    {
        synchronized (monitor())
        {
            check_orphaned();
            com.googlecode.horncomb.orm.jpa.v10.xmlbeans.OneToMany target = null;
            target = (com.googlecode.horncomb.orm.jpa.v10.xmlbeans.OneToMany)get_store().find_element_user(ONETOMANY$10, i);
            if (target == null)
            {
                throw new IndexOutOfBoundsException();
            }
            target.set(oneToMany);
        }
    }

    /**
     * Inserts and returns a new empty value (as xml) as the ith "one-to-many" element
     */
    public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.OneToMany insertNewOneToMany(int i)
    {
        synchronized (monitor())
        {
            check_orphaned();
            com.googlecode.horncomb.orm.jpa.v10.xmlbeans.OneToMany target = null;
            target = (com.googlecode.horncomb.orm.jpa.v10.xmlbeans.OneToMany)get_store().insert_element_user(ONETOMANY$10, i);
            return target;
        }
    }

    /**
     * Appends and returns a new empty value (as xml) as the last "one-to-many" element
     */
    public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.OneToMany addNewOneToMany()
    {
        synchronized (monitor())
        {
            check_orphaned();
            com.googlecode.horncomb.orm.jpa.v10.xmlbeans.OneToMany target = null;
            target = (com.googlecode.horncomb.orm.jpa.v10.xmlbeans.OneToMany)get_store().add_element_user(ONETOMANY$10);
            return target;
        }
    }

    /**
     * Removes the ith "one-to-many" element
     */
    public void removeOneToMany(int i)
    {
        synchronized (monitor())
        {
            check_orphaned();
            get_store().remove_element(ONETOMANY$10, i);
        }
    }

    /**
     * Gets a List of "one-to-one" elements
     */
    public java.util.List<com.googlecode.horncomb.orm.jpa.v10.xmlbeans.OneToOne> getOneToOneList()
    {
        final class OneToOneList extends java.util.AbstractList<com.googlecode.horncomb.orm.jpa.v10.xmlbeans.OneToOne>
        {
            @Override
			public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.OneToOne get(int i)
                { return AttributesImpl.this.getOneToOneArray(i); }

            @Override
			public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.OneToOne set(int i, com.googlecode.horncomb.orm.jpa.v10.xmlbeans.OneToOne o)
            {
                com.googlecode.horncomb.orm.jpa.v10.xmlbeans.OneToOne old = AttributesImpl.this.getOneToOneArray(i);
                AttributesImpl.this.setOneToOneArray(i, o);
                return old;
            }

            @Override
			public void add(int i, com.googlecode.horncomb.orm.jpa.v10.xmlbeans.OneToOne o)
                { AttributesImpl.this.insertNewOneToOne(i).set(o); }

            @Override
			public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.OneToOne remove(int i)
            {
                com.googlecode.horncomb.orm.jpa.v10.xmlbeans.OneToOne old = AttributesImpl.this.getOneToOneArray(i);
                AttributesImpl.this.removeOneToOne(i);
                return old;
            }

            @Override
			public int size()
                { return AttributesImpl.this.sizeOfOneToOneArray(); }

        }

        synchronized (monitor())
        {
            check_orphaned();
            return new OneToOneList();
        }
    }

    /**
     * Gets array of all "one-to-one" elements
     */
    public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.OneToOne[] getOneToOneArray()
    {
        synchronized (monitor())
        {
            check_orphaned();
            java.util.List targetList = new java.util.ArrayList();
            get_store().find_all_element_users(ONETOONE$12, targetList);
            com.googlecode.horncomb.orm.jpa.v10.xmlbeans.OneToOne[] result = new com.googlecode.horncomb.orm.jpa.v10.xmlbeans.OneToOne[targetList.size()];
            targetList.toArray(result);
            return result;
        }
    }

    /**
     * Gets ith "one-to-one" element
     */
    public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.OneToOne getOneToOneArray(int i)
    {
        synchronized (monitor())
        {
            check_orphaned();
            com.googlecode.horncomb.orm.jpa.v10.xmlbeans.OneToOne target = null;
            target = (com.googlecode.horncomb.orm.jpa.v10.xmlbeans.OneToOne)get_store().find_element_user(ONETOONE$12, i);
            if (target == null)
            {
                throw new IndexOutOfBoundsException();
            }
            return target;
        }
    }

    /**
     * Returns number of "one-to-one" element
     */
    public int sizeOfOneToOneArray()
    {
        synchronized (monitor())
        {
            check_orphaned();
            return get_store().count_elements(ONETOONE$12);
        }
    }

    /**
     * Sets array of all "one-to-one" element
     */
    public void setOneToOneArray(com.googlecode.horncomb.orm.jpa.v10.xmlbeans.OneToOne[] oneToOneArray)
    {
        synchronized (monitor())
        {
            check_orphaned();
            arraySetterHelper(oneToOneArray, ONETOONE$12);
        }
    }

    /**
     * Sets ith "one-to-one" element
     */
    public void setOneToOneArray(int i, com.googlecode.horncomb.orm.jpa.v10.xmlbeans.OneToOne oneToOne)
    {
        synchronized (monitor())
        {
            check_orphaned();
            com.googlecode.horncomb.orm.jpa.v10.xmlbeans.OneToOne target = null;
            target = (com.googlecode.horncomb.orm.jpa.v10.xmlbeans.OneToOne)get_store().find_element_user(ONETOONE$12, i);
            if (target == null)
            {
                throw new IndexOutOfBoundsException();
            }
            target.set(oneToOne);
        }
    }

    /**
     * Inserts and returns a new empty value (as xml) as the ith "one-to-one" element
     */
    public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.OneToOne insertNewOneToOne(int i)
    {
        synchronized (monitor())
        {
            check_orphaned();
            com.googlecode.horncomb.orm.jpa.v10.xmlbeans.OneToOne target = null;
            target = (com.googlecode.horncomb.orm.jpa.v10.xmlbeans.OneToOne)get_store().insert_element_user(ONETOONE$12, i);
            return target;
        }
    }

    /**
     * Appends and returns a new empty value (as xml) as the last "one-to-one" element
     */
    public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.OneToOne addNewOneToOne()
    {
        synchronized (monitor())
        {
            check_orphaned();
            com.googlecode.horncomb.orm.jpa.v10.xmlbeans.OneToOne target = null;
            target = (com.googlecode.horncomb.orm.jpa.v10.xmlbeans.OneToOne)get_store().add_element_user(ONETOONE$12);
            return target;
        }
    }

    /**
     * Removes the ith "one-to-one" element
     */
    public void removeOneToOne(int i)
    {
        synchronized (monitor())
        {
            check_orphaned();
            get_store().remove_element(ONETOONE$12, i);
        }
    }

    /**
     * Gets a List of "many-to-many" elements
     */
    public java.util.List<com.googlecode.horncomb.orm.jpa.v10.xmlbeans.ManyToMany> getManyToManyList()
    {
        final class ManyToManyList extends java.util.AbstractList<com.googlecode.horncomb.orm.jpa.v10.xmlbeans.ManyToMany>
        {
            @Override
			public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.ManyToMany get(int i)
                { return AttributesImpl.this.getManyToManyArray(i); }

            @Override
			public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.ManyToMany set(int i, com.googlecode.horncomb.orm.jpa.v10.xmlbeans.ManyToMany o)
            {
                com.googlecode.horncomb.orm.jpa.v10.xmlbeans.ManyToMany old = AttributesImpl.this.getManyToManyArray(i);
                AttributesImpl.this.setManyToManyArray(i, o);
                return old;
            }

            @Override
			public void add(int i, com.googlecode.horncomb.orm.jpa.v10.xmlbeans.ManyToMany o)
                { AttributesImpl.this.insertNewManyToMany(i).set(o); }

            @Override
			public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.ManyToMany remove(int i)
            {
                com.googlecode.horncomb.orm.jpa.v10.xmlbeans.ManyToMany old = AttributesImpl.this.getManyToManyArray(i);
                AttributesImpl.this.removeManyToMany(i);
                return old;
            }

            @Override
			public int size()
                { return AttributesImpl.this.sizeOfManyToManyArray(); }

        }

        synchronized (monitor())
        {
            check_orphaned();
            return new ManyToManyList();
        }
    }

    /**
     * Gets array of all "many-to-many" elements
     */
    public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.ManyToMany[] getManyToManyArray()
    {
        synchronized (monitor())
        {
            check_orphaned();
            java.util.List targetList = new java.util.ArrayList();
            get_store().find_all_element_users(MANYTOMANY$14, targetList);
            com.googlecode.horncomb.orm.jpa.v10.xmlbeans.ManyToMany[] result = new com.googlecode.horncomb.orm.jpa.v10.xmlbeans.ManyToMany[targetList.size()];
            targetList.toArray(result);
            return result;
        }
    }

    /**
     * Gets ith "many-to-many" element
     */
    public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.ManyToMany getManyToManyArray(int i)
    {
        synchronized (monitor())
        {
            check_orphaned();
            com.googlecode.horncomb.orm.jpa.v10.xmlbeans.ManyToMany target = null;
            target = (com.googlecode.horncomb.orm.jpa.v10.xmlbeans.ManyToMany)get_store().find_element_user(MANYTOMANY$14, i);
            if (target == null)
            {
                throw new IndexOutOfBoundsException();
            }
            return target;
        }
    }

    /**
     * Returns number of "many-to-many" element
     */
    public int sizeOfManyToManyArray()
    {
        synchronized (monitor())
        {
            check_orphaned();
            return get_store().count_elements(MANYTOMANY$14);
        }
    }

    /**
     * Sets array of all "many-to-many" element
     */
    public void setManyToManyArray(com.googlecode.horncomb.orm.jpa.v10.xmlbeans.ManyToMany[] manyToManyArray)
    {
        synchronized (monitor())
        {
            check_orphaned();
            arraySetterHelper(manyToManyArray, MANYTOMANY$14);
        }
    }

    /**
     * Sets ith "many-to-many" element
     */
    public void setManyToManyArray(int i, com.googlecode.horncomb.orm.jpa.v10.xmlbeans.ManyToMany manyToMany)
    {
        synchronized (monitor())
        {
            check_orphaned();
            com.googlecode.horncomb.orm.jpa.v10.xmlbeans.ManyToMany target = null;
            target = (com.googlecode.horncomb.orm.jpa.v10.xmlbeans.ManyToMany)get_store().find_element_user(MANYTOMANY$14, i);
            if (target == null)
            {
                throw new IndexOutOfBoundsException();
            }
            target.set(manyToMany);
        }
    }

    /**
     * Inserts and returns a new empty value (as xml) as the ith "many-to-many" element
     */
    public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.ManyToMany insertNewManyToMany(int i)
    {
        synchronized (monitor())
        {
            check_orphaned();
            com.googlecode.horncomb.orm.jpa.v10.xmlbeans.ManyToMany target = null;
            target = (com.googlecode.horncomb.orm.jpa.v10.xmlbeans.ManyToMany)get_store().insert_element_user(MANYTOMANY$14, i);
            return target;
        }
    }

    /**
     * Appends and returns a new empty value (as xml) as the last "many-to-many" element
     */
    public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.ManyToMany addNewManyToMany()
    {
        synchronized (monitor())
        {
            check_orphaned();
            com.googlecode.horncomb.orm.jpa.v10.xmlbeans.ManyToMany target = null;
            target = (com.googlecode.horncomb.orm.jpa.v10.xmlbeans.ManyToMany)get_store().add_element_user(MANYTOMANY$14);
            return target;
        }
    }

    /**
     * Removes the ith "many-to-many" element
     */
    public void removeManyToMany(int i)
    {
        synchronized (monitor())
        {
            check_orphaned();
            get_store().remove_element(MANYTOMANY$14, i);
        }
    }

    /**
     * Gets a List of "embedded" elements
     */
    public java.util.List<com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Embedded> getEmbeddedList()
    {
        final class EmbeddedList extends java.util.AbstractList<com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Embedded>
        {
            @Override
			public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Embedded get(int i)
                { return AttributesImpl.this.getEmbeddedArray(i); }

            @Override
			public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Embedded set(int i, com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Embedded o)
            {
                com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Embedded old = AttributesImpl.this.getEmbeddedArray(i);
                AttributesImpl.this.setEmbeddedArray(i, o);
                return old;
            }

            @Override
			public void add(int i, com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Embedded o)
                { AttributesImpl.this.insertNewEmbedded(i).set(o); }

            @Override
			public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Embedded remove(int i)
            {
                com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Embedded old = AttributesImpl.this.getEmbeddedArray(i);
                AttributesImpl.this.removeEmbedded(i);
                return old;
            }

            @Override
			public int size()
                { return AttributesImpl.this.sizeOfEmbeddedArray(); }

        }

        synchronized (monitor())
        {
            check_orphaned();
            return new EmbeddedList();
        }
    }

    /**
     * Gets array of all "embedded" elements
     */
    public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Embedded[] getEmbeddedArray()
    {
        synchronized (monitor())
        {
            check_orphaned();
            java.util.List targetList = new java.util.ArrayList();
            get_store().find_all_element_users(EMBEDDED$16, targetList);
            com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Embedded[] result = new com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Embedded[targetList.size()];
            targetList.toArray(result);
            return result;
        }
    }

    /**
     * Gets ith "embedded" element
     */
    public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Embedded getEmbeddedArray(int i)
    {
        synchronized (monitor())
        {
            check_orphaned();
            com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Embedded target = null;
            target = (com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Embedded)get_store().find_element_user(EMBEDDED$16, i);
            if (target == null)
            {
                throw new IndexOutOfBoundsException();
            }
            return target;
        }
    }

    /**
     * Returns number of "embedded" element
     */
    public int sizeOfEmbeddedArray()
    {
        synchronized (monitor())
        {
            check_orphaned();
            return get_store().count_elements(EMBEDDED$16);
        }
    }

    /**
     * Sets array of all "embedded" element
     */
    public void setEmbeddedArray(com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Embedded[] embeddedArray)
    {
        synchronized (monitor())
        {
            check_orphaned();
            arraySetterHelper(embeddedArray, EMBEDDED$16);
        }
    }

    /**
     * Sets ith "embedded" element
     */
    public void setEmbeddedArray(int i, com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Embedded embedded)
    {
        synchronized (monitor())
        {
            check_orphaned();
            com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Embedded target = null;
            target = (com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Embedded)get_store().find_element_user(EMBEDDED$16, i);
            if (target == null)
            {
                throw new IndexOutOfBoundsException();
            }
            target.set(embedded);
        }
    }

    /**
     * Inserts and returns a new empty value (as xml) as the ith "embedded" element
     */
    public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Embedded insertNewEmbedded(int i)
    {
        synchronized (monitor())
        {
            check_orphaned();
            com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Embedded target = null;
            target = (com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Embedded)get_store().insert_element_user(EMBEDDED$16, i);
            return target;
        }
    }

    /**
     * Appends and returns a new empty value (as xml) as the last "embedded" element
     */
    public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Embedded addNewEmbedded()
    {
        synchronized (monitor())
        {
            check_orphaned();
            com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Embedded target = null;
            target = (com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Embedded)get_store().add_element_user(EMBEDDED$16);
            return target;
        }
    }

    /**
     * Removes the ith "embedded" element
     */
    public void removeEmbedded(int i)
    {
        synchronized (monitor())
        {
            check_orphaned();
            get_store().remove_element(EMBEDDED$16, i);
        }
    }

    /**
     * Gets a List of "transient" elements
     */
    public java.util.List<com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Transient> getTransientList()
    {
        final class TransientList extends java.util.AbstractList<com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Transient>
        {
            @Override
			public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Transient get(int i)
                { return AttributesImpl.this.getTransientArray(i); }

            @Override
			public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Transient set(int i, com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Transient o)
            {
                com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Transient old = AttributesImpl.this.getTransientArray(i);
                AttributesImpl.this.setTransientArray(i, o);
                return old;
            }

            @Override
			public void add(int i, com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Transient o)
                { AttributesImpl.this.insertNewTransient(i).set(o); }

            @Override
			public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Transient remove(int i)
            {
                com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Transient old = AttributesImpl.this.getTransientArray(i);
                AttributesImpl.this.removeTransient(i);
                return old;
            }

            @Override
			public int size()
                { return AttributesImpl.this.sizeOfTransientArray(); }

        }

        synchronized (monitor())
        {
            check_orphaned();
            return new TransientList();
        }
    }

    /**
     * Gets array of all "transient" elements
     */
    public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Transient[] getTransientArray()
    {
        synchronized (monitor())
        {
            check_orphaned();
            java.util.List targetList = new java.util.ArrayList();
            get_store().find_all_element_users(TRANSIENT$18, targetList);
            com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Transient[] result = new com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Transient[targetList.size()];
            targetList.toArray(result);
            return result;
        }
    }

    /**
     * Gets ith "transient" element
     */
    public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Transient getTransientArray(int i)
    {
        synchronized (monitor())
        {
            check_orphaned();
            com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Transient target = null;
            target = (com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Transient)get_store().find_element_user(TRANSIENT$18, i);
            if (target == null)
            {
                throw new IndexOutOfBoundsException();
            }
            return target;
        }
    }

    /**
     * Returns number of "transient" element
     */
    public int sizeOfTransientArray()
    {
        synchronized (monitor())
        {
            check_orphaned();
            return get_store().count_elements(TRANSIENT$18);
        }
    }

    /**
     * Sets array of all "transient" element
     */
    public void setTransientArray(com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Transient[] xtransientArray)
    {
        synchronized (monitor())
        {
            check_orphaned();
            arraySetterHelper(xtransientArray, TRANSIENT$18);
        }
    }

    /**
     * Sets ith "transient" element
     */
    public void setTransientArray(int i, com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Transient xtransient)
    {
        synchronized (monitor())
        {
            check_orphaned();
            com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Transient target = null;
            target = (com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Transient)get_store().find_element_user(TRANSIENT$18, i);
            if (target == null)
            {
                throw new IndexOutOfBoundsException();
            }
            target.set(xtransient);
        }
    }

    /**
     * Inserts and returns a new empty value (as xml) as the ith "transient" element
     */
    public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Transient insertNewTransient(int i)
    {
        synchronized (monitor())
        {
            check_orphaned();
            com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Transient target = null;
            target = (com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Transient)get_store().insert_element_user(TRANSIENT$18, i);
            return target;
        }
    }

    /**
     * Appends and returns a new empty value (as xml) as the last "transient" element
     */
    public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Transient addNewTransient()
    {
        synchronized (monitor())
        {
            check_orphaned();
            com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Transient target = null;
            target = (com.googlecode.horncomb.orm.jpa.v10.xmlbeans.Transient)get_store().add_element_user(TRANSIENT$18);
            return target;
        }
    }

    /**
     * Removes the ith "transient" element
     */
    public void removeTransient(int i)
    {
        synchronized (monitor())
        {
            check_orphaned();
            get_store().remove_element(TRANSIENT$18, i);
        }
    }
}
